// string 类型
let myName: string = "Alice";
// console.log(myName)
// boolean
let isLogin: boolean = false
// 数组
let names: Array<string> = ['henry', 'bucky']//数组里放字符串
let numbers: Array<number> = [1, 2]//数组中放数字类型
let anyArray: any[] = ['hehe', 1, false]//数组中放任意类型
// 元组
let colors: [string, number] = ['hello', 99]//数组中指定类型
// 枚举 enum 生成一个自己想要的类型 (自定义)
enum Color { 
    Black,//0  值默认是0 ,但如果上一个值改了;下一个值会跟着变化,或下一个值也可以指定
    Yellow,//1
    Red
}
// 定义一个变量类型为Color
let myColor: Color = Color.Black
// console.log('enum--myColor', myColor);

// -----------------------------函数相关类型
//1. 指定值返回类型
function returnValue():string {//:string为指定值返回类型
    return 'hello'
}
// console.log('函数返回类型', returnValue());
// 2:空 没有任何返回值
function sayHello():void {//:void
   console.log('hello--void',);
}
// console.log('没有任何返回值',sayHello());// undefined

//3:参数类型 ---value1:number, value2:number 指定传入为数字类型 :number为返回值类型
function sumValue(value1:number, value2:number):number {
    return value1+value2
}
console.log('参数返回类型',sumValue(1,2));

// 4.函数类型
let myFunc:(a:number,b:number)=>number;
// myFunc = sayHello;//函数赋值
// myFunc()
myFunc = sumValue;
console.log('函数类型传参',myFunc(5,5));//10